home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Utilities Professional 1-1500
/
Utilities Professional 1-1500 (1994)(WPD)[!].iso
/
12511500
/
var1292.dms
/
var1292.adf
/
chasym
/
chasym.doc
< prev
next >
Wrap
Text File
|
1993-03-16
|
12KB
|
297 lines
ChaSym copyright (c) 1993 A.Kreibich
Programmed by Andrew Kreibich with AMOSv1.35 (C) 1990 Mandarin/Jawx
Compiled with the AMOS compiler v1.35.
Note: to quit at any time (without using the menu) press Ctrl-C.
to toggle workbench use left Amiga-A (Amiga N and M will not work)
OVERVIEW
########
ChaSym (Chaos Symmetry) is a programme which plots pictures of
chaotic systems which display symmetry. This is done by repeated
iterations of the following equation.
Z(n+1) = U * Z(n) * (1-(Z(n)^2) + G * (ZC(n))^(M-1)
Where Z(n) is a complex number Z(n)=x+iy and ZC(n) is the complex conjugate
of Z(n). ZC(n)= x-iy.
You don't need to understand any of that to generate the pictures!
The points produced are plotted on the screen and over a period of time a
picture will develop. The colour of the points is determined by the
number of times the point has been visited. I.E. first time it is plotted
with colour 1 (purple using the default palette). The colour increases in
a non linear fashion up to colour 15 which represents at least 255 visits.
This table shows the colour plotted for the number of visits.
visits colour
1 1
2-3 2
4-5 3
6-9 4
10-14 5
15-19 6
20-39 7
40-59 8
60-79 9
80-119 10
120-159 11
160-199 12
200-239 13
240-254 14
over 254 15
The resulting picture is therefore a map of the probability of
landing on the point. You can change the parameters in the equation
using the Change Data menu item.
Note: depending on the choice of parameters one of three things will
happen.
1. You will produce a nice picture displaying symmetry of the
order chosen by the parameter M which will continue to generate
forever (if you let it go that long).
2. The points will quickly converge onto one spot (or small group of
spots) and stay there. As these are not very interesting you
should change the parameters and restart.
3. The points will rapidly disappear off the screen never to return
(usually only takes half a dozen iterations). These are even
less interesting than the ones in 2 so change the parameters.
When you start the programme the default settings will automatically
start generating a picture with 25 fold symmetry (count it!). Use the
menu to change the parameters, but be careful with parameters U and G.
If both of these are big then the point will rapidly approach infinity.
You can load and save pictures and the parameters which you used to
create them by using the menus. There are a few which I have generated
in the drawer labelled 'examples'.
If you don't understand the maths then just experiment with different
parameters and enjoy the result.
THE FILE REQUESTER
All loads and saves use the standard amos file requester. Most things are
self explanatory, just double click on the name of the file you want with
the left mouse button, or click on the area at the bottom and type in the
name of your file. The PARENT gadget is the small circle above the slider
bar at the left. A list of DEVICES/DRIVES can be obtained by clicking in
the central area with the right mouse button. (the area where the names
of the files are displayed) The list of files can be redisplayed by
clicking the right mouse button in this area a second time.
Explanation of menu items
Project menu
Palette: Brings up a palette requester so you can change colours
See the file "Palette.doc" for details.
Save IFF: Lets you save your pictures.
(Disabled in Demonstration version)
Load IFF: Lets you load your pictures back in to view or to
generate something over the top. There is no point
in continuing to generate as the table which holds
the number of visits is not saved in this version, but
you may wish to generate another picture on top of the
old one using new data for example.
The pictures are standard IFF files so you
can also view/use them with other programmes.
About: Information about the programme.
Quit: Another fairly obvious one.
Parameters menu
Change Data: Brings up a screen so that you can change the value
of each of the constants in the equation.
Zoom In: Press left mouse button on top left corner of the area
you wish to zoom in on. Drag the rubber band to the
opposite corner while you hold the left mouse button.
The area you have selected will be enlarged to fill the
screen and the picture will be regenerated from the start.
Zoom Out: Works the same way as Zoom In except that the area on the
screen will be shrunk into the area you have selected and
the picture will regenerate."
Nudge is ON/OFF: Sometimes the picture gets 'stuck' while it is generating
because the X and/or Y coordinates have reached zero. This
results in a thick line in one part of the picture and is
probably caused by an accumulation of rounding off errors.
In order to get around this the NUDGE ON feature checks to
see if either X or Y is zero and if it is it gives it a
'Nudge' by adding a small number so that generation can
continue. If you don't like this then turn it off.
Save Data: Saves the settings from the parameter screen.
This version does not save zoom or palette settings
and does not save the table which stores the count for
each point. This may be added in the next version.
This is disabled in the demonstration version.
Load Data: Loads a previously saved setting to the parameter screen.
You will find a selection of these in the Example drawer.
Pause/Continue: Lets you pause the generation process. This is used if you
load a picture in and you don't want it covered in new
points. You can continue by selecting this menu item again.
Explanation of Parameter screen
Each of the parameters in the equation (U, G and M) can be
changed by dragging the appropriate slider bar.
Parameter M determines the symmetry of the resulting figure.
Parameters U and G have an effect on size and shape. (experiment!)
You can also change the position of the first point by
changing the X and Y parameters. This probably has little effect on the
final figure but can be useful to see what happens in various sections
soon after the start.
Continue and Restart buttons
If you want to clear the screen and generate from the start select Restart.
If you want to continue generating without clearing the screen select
Continue. This can be used to draw two or more pictures on the same screen
or when you load a previously generated picture and you want to continue
generating. (When I enable the saving of the colour table).
FINALLY....
Some combinations of parameters will send the points to infinity
in a very short time. As your screen isn't quite that big you will only
see the first few dots. If this happens go back to the parameter screen
and change a few things, in particular reduce the values of U and/or G.
#####################
Memory requirements
#####################
This programme needs 1 meg.
You may run it from Workbench in the usual manner or from
CLI.
Just cd to the directory containing chasym and type
Run > Nil: chasym
endcli
(Make sure you have Run and endcli in your C directory)
If memory is short you could put it on its own boot disk and replace
your startup sequence with the above lines.
################
DISTRIBUTION
################
THIS PROGRAMME IS SHAREWARE!
This means that my ego and my wallet would appreciate a little feedback
for all my efforts!
You may (and are encouraged to) distribute the Shareware version of this
programe to anyone providing you observe the following conditions.
(a) You don't make any money from it (apart from a nominal copying fee)
without my prior written permission.
(b) You may not include it or any routines from it in any commercial
release (including SHAREWARE or one of its variations) without
my prior written permission.
(c) You distribute this entire doc. file and all other files with the
programme.
(d) Magazines may include it on a cover disk provided they include ALL
files including .doc files.
(e) If you use it you write back and let me know what you think of it
along with a shareware donation. (minimum $15 Australian)
To Andrew Kreibich
Box 333
Wantirna South
Victoria
Australia. 3152
Please try to send money in Australian dollars, or a cheque drawn on
an Australian bank (your bank should be able to arrange this),
our banks charge a fortune to convert:- another benefit of
deregulation?.
If you have trouble obtaining Australian Dollars, I can cope with
English, USA, Canadian or German money, but it costs me money to change
it so please add $5.
PLEASE DO NOT SEND EUROCHEQUES!! It costs me over $40 to convert these!
Any Eurocheck I receive will be sent back WITHOUT the software.
Unfortunately I cannot afford to send it and hope that you return
the money. I did this once and never heard from the guy again.
(You may be feeling quite smug, Jurgen, but you have spoiled it for
everyone else!)
As they say; Once bitten, twice shy!
Naturally if you think I have done a really fantastic job on this
and you cannot help but show your appreciation by sending more money
(Australian Dollars!) etc. then I will happily accept it!
WHAT DO YOU GET FOR REGISTERING?
My thanks, the knowledge that you have encouraged me to keep programming
and releasing stuff, the source and of course a fully working version.
(all saves are disabled in the shareware demonstration version.)
Source code will only be sent to those who specifically ask for it.
I am thinking of adding a few new features such as:
Load/Save palette settings and zoom information with the parameter files.
Load/Save the table which registers the amount of visits to each point.
This will allow you to load in a partially generated picture as well
as the table and contiue generating at a later date.
Giving the option of altering the way colours are plotted so that you
can control how quickly points reach colour 15. This may allow you to
bring out more detail in some areas of the picture.
By the time you read this I should have finished these improvements, so
you can have them in your registered version if you want them.
Any other ideas or suggestions will be incorporated if possible.
Hope you enjoy the programme,
Andrew.